<?php

interface ICoreSocketIncStreams
{
	/**
	 * @param	string	$sHost
	 * @param	int		$iPort
	 * @param	int		&$iErrorNo
	 * @param	string	&$sErrorStr
	 * @param	int		$iConnectTimeOut
	 * @return	bool
	 */
	public function Open($sHost, $iPort, &$iErrorNo, &$sErrorStr, $iConnectTimeOut);

	/**
	 * @return	void
	 */
	public function Close();

	/**
	 * @return	bool
	 */
	public function IsConnected();

	/**
	 * @param	string	$sLine
	 * @return	bool
	 */
	public function Write($sLine);

	/**
	 * @return	string | false
	 */
	public function Read();

	/**
	 * @return	array | false
	 */
	public function Status();
	
	/**
	 * @param	int		$iSocketTimeOut
	 * @param	bool	$bSocketBlocking
	 */
	public function SetTimeAndBlocking($iSocketTimeOut, $bSocketBlocking);
}